home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Wonky Flux Batch 2019 02
/
Wonky_Flux_Batch_2019-02.zip
/
Wonky Flux Batch 2019-02
/
073 - ProSEL 3.3.dsk
/
INSTALL.REVISN.bas
< prev
next >
Wrap
BASIC Source File
|
2019-02-17
|
5KB
|
118 lines
1 REM INSTALL PROSEL REVISION
2 REM
3 REM Run under BASIC 1.1.
4 REM Must be room for 2 more files on main dir.
5 REM
10 IF PEEK(176) >30 THEN STOP
20 IF PEEK(34) THEN 60
30 PRINT CHR$(4)"PR#3"
40 PRINT CHR$(12);
50 PRINT TAB( 25)"ProSel revision installation": POKE 34,4
60 PRINT CHR$(4)"BLOAD/FLOPPY/COMMANDS/COPY,TCMD,A$4000": CALL 4 *4096
70 LOMEM: 6 *4096:DE$ = "DELETE":D$ = CHR$(4):C$ = "COPY":U$ = "UNLOCK"
80 VOL$ = "/FLOPPY/":F$ = VOL$:P$ = "PROSEL":PS$ = "PROSEL.SYSTEM":V = PEEK(48944)
90 PRINT : HOME : PRINT "This program is for replacing an existing copy of "P$" while keeping your"
100 PRINT "present application list. It will backup the present "P$" file and then"
110 PRINT "delete the original. Type "; CHR$(34);"OK"; CHR$(34);" <RTN> to continue, anything else to abort."
120 GOSUB 8000
130 INPUT PF$: IF PF$ < >"OK" AND PF$ < >"ok" THEN TEXT : PRINT : HOME : PRINT D$"-STARTUP"
140 PF$ = "/HARD1/"
150 PRINT : PRINT "If the volume containing "P$" is named "PF$" then press RETURN."
160 PRINT "Otherwise type the volume name";: INPUT ": ";N$
170 IF N$ = "" THEN 210
180 IF LEFT$(N$,1) < >"/" THEN N$ = "/" +N$
190 IF RIGHT$(N$,1) < >"/" THEN N$ = N$ +"/"
200 PF$ = N$
210 PRINT : INPUT "Install 40 or 80 column or Videoterm version? (40/80/VT):";V$
220 IF V$ < >"40" AND V$ < >"80" AND V$ < >"VT" AND V$ < >"vt" THEN 210
230 PRINT : INPUT "Time delay before screen blanking in ProSel in minutes (2-59) :";TD
240 IF TD <2 OR TD >59 THEN 230
250 ONERR GOTO 1000
260 PRINT D$"VERIFY"PF$
270 IF V = PEEK(48944) THEN 4800
280 ONERR GOTO 3000
290 PRINT D$U$PF$P$
300 PRINT D$U$PF$PS$
310 PRINT D$"BLOAD"PF$PS$",TSYS,A$4000"
320 PRINT D$C$PF$PS$","PF$PS$".B"
330 ONERR GOTO 2000
340 PRINT D$C$VOL$PS$","PF$PS$
350 LOC = 4 *4096 +3: IF PEEK(LOC) < >238 OR PEEK(LOC +1) < >238 THEN 400
360 LOC = 4 *4096 +6:NL = 2 *4096 +6:L = PEEK(LOC): IF NOT L THEN 400
370 PRINT D$"BLOAD"PF$PS$",TSYS,A$2000"
380 FOR I = 0 TO L: POKE NL +I, PEEK(LOC +I): NEXT I
390 PRINT D$"BSAVE"PF$PS$",TSYS,B0,A$2000"
400 GOSUB 7000
410 PRINT D$"RENAME"PF$P$","PF$P$".";V +1
420 GOSUB 7000
430 FOR Q = 1 TO V:Q$ = P$ +"." + STR$(Q)
440 ONERR GOTO 4500
450 PRINT D$U$PF$Q$
460 PRINT D$C$PF$Q$","PF$Q$".BAK"
470 PRINT D$DE$PF$Q$
480 PRINT D$C$F$P$"."V$","PF$Q$
490 PRINT D$"BLOAD"PF$Q$".BAK,A$2000"
500 PRINT D$"BLOAD"PF$Q$",A$4000"
510 IF Q = 1 THEN PRINT : PRINT TAB( 30)"DO NOT INTERRUPT!": PRINT
520 AD = 2 *4096
530 IF V >1 THEN PRINT TAB( 30)"Revising "Q$
540 IF PEEK(AD) < >76 OR PEEK(AD +1) >9 THEN 4000
550 IF PEEK(AD +2) < >10 AND PEEK(AD +2) < >8 THEN 4000
560 IF PEEK(AD +5) < >255 AND PEEK(AD +5) < >223 THEN 4000
570 AD = AD + PEEK(AD +3) +256 * PEEK(AD +4)
580 IF PEEK(AD) <128 THEN 4000
590 CALL 7936: POKE 4 *4096 +6,TD
600 PRINT D$"BSAVE"PF$Q$",B0,A$4000,L$1800"
610 PRINT D$DE$PF$Q$".BAK"
620 NEXT Q
630 Q$ = P$: PRINT D$"RENAME"PF$P$".1,"PF$P$
640 GOSUB 6050
650 TEXT : HOME : PRINT D$"-"PF$PS$
660 STOP
1000 PRINT : PRINT "Volume "PF$" not found - installation aborted."
1010 GOTO 5000
2000 GOSUB 6000
3000 HOME
3010 PRINT "Cannot find "P$" on "PF$". You must rerun this program and select"
3020 PRINT CHR$(34)"new installation." CHR$(34)
3030 GOTO 5000
4000 HOME : GOSUB 6000
4010 PRINT "The copy of "P$" on the receiving disk is not supported by this program."
4020 PRINT "Delete all "P$" related files on the receiving disk, reboot the "P$" disk,"
4030 PRINT "and select the option to install a new "P$" system."
4040 GOTO 5000
4500 GOSUB 6000
4501 PRINT "Disk error occurred. ";
4510 GOTO 4900
4800 PRINT : PRINT "Cannot install on volume named "VOL$". ";
4900 PRINT "Installation aborted."
5000 TEXT : VTAB 22: NEW
5010 END
6000 ONERR GOTO 6090
6010 PRINT D$DE$PF$PS$
6020 PRINT D$C$PF$PS$".B,"PF$PS$
6030 PRINT D$DE$PF$P$
6040 PRINT D$C$PF$Q$".BAK,"PF$P$
6050 ONERR GOTO 6090
6060 PRINT D$DE$PF$PS$".B"
6070 PRINT D$DE$PF$Q$".BAK"
6080 POKE 216,0: RETURN
6090 POKE 216,0: CALL 62248: RETURN
7000 V = 1: ONERR GOTO 7030
7010 PRINT D$"VERIFY"PF$P$".";V
7020 V = V +1: IF V <10 THEN 7010
7030 V = V -1
7040 POKE 216,0: CALL 62248: RETURN
8000 FOR I = 0 TO 116: READ BYTE: POKE 7936 +I,BYTE: NEXT : RETURN
8010 DATA 162,0,173,3,64,133,226,173,4,64
8020 DATA 24,105,64,133,227,173,3,32,133,224
8030 DATA 173,4,32,24,105,32,133,225,165,226
8040 DATA 133,228,165,227,133,229,177,224,16,16
8050 DATA 145,226,230,224,208,2,230,225,230,226
8060 DATA 208,2,230,227,208,236,168,240,43,177
8070 DATA 224,201,47,208,1,136,152,129,226,177
8080 DATA 224,145,226,136,208,249,161,224,56,101
8090 DATA 224,133,224,144,2,230,225,161,226,56
8100 DATA 101,226,133,226,144,2,230,227,161,224
8110 DATA 48,182,129,226,168,208,218,165,227,201
8120 DATA 88,144,3,138,129,228,96